type ServiceIdentifier
    [Instance, Argument]
    native;

type ServiceConstructor
    [Instance, Argument]
    &(Argument, Connection) => Async[Instance, Error];

type ServiceConsumer
    [Instance]
    &(Instance) => Async;

type Method
    [in Input, out Output]
    &(Input) => Async[Output, Error];

type Method*
    [in Input, out Output]
    &(Input) => Observable[Output, Error];


